package com.dap.service;

public interface FlowControlService {



    /**
     * 获取一段时间服务未被限流的比率（成功数/总数）
     * @param interval
     * @param applicationName  应用名
     * @param interfaceName  接口名
     * @param groupName  组名
     * @return
     */
    String getFlowControlRate(Long interval, String applicationName,String interfaceName,String groupName);

    /**
     * 获取一段时间内未被限流的请求数
     * @param applicationName  应用名
     * @param interfaceName  接口名
     * @param groupName  组名
     * @return
     */
    String countSuccess(Long interval, String applicationName,String interfaceName,String groupName);

    /**
     * 单位时间并发量
     * @param interval 时间间隔
     * @param applicationName  应用名
     * @param interfaceName  接口名
     * @param groupName  组名
     * @return
     */
    Long concurrence(Long interval, String applicationName,String interfaceName,String groupName);

    /**
     * 当前请求在队列中的位置
     * @param applicationName  应用名
     * @param interfaceName  接口名
     * @param groupName  组名
     * @return
     */
    String rankOnQueue(String applicationName,String interfaceName,String groupName);


}
